package com.ryder.subject.infra.basic.es;

import lombok.Data;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder;
import org.elasticsearch.search.sort.SortOrder;

/**
 * 描述: 封装的请求类
 *
 * @author Ryder
 * @version 1.0
 * @since 1.0 // 版本号，指明从哪个版本开始
 * 更新日期: 2025/03/10
 */
@Data
public class EsSearchRequest {
    /*
     *  查询条件
     */
    private BoolQueryBuilder bq;
    /*
     *  查询字段
     */
    private String[] fields;
    /*
     *  查询页数
     */
    private int from;
    /*
     *  查询条数
     */
    private int size;
    /*
     *  需要快照
     */
    private Boolean needScroll;
    /*
     *  快照缓存时间
     */
    private Long minutes;
    /*
     *  排序字段
     */
    private String sortName;
    /*
     *  排序类型
     */
    private SortOrder sortOrder;
    /*
     *  高亮builder
     */
    private HighlightBuilder highlightBuilder;

}
